package com.example.mqttdemo.entity.vo;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 设备命令返回结果
 */
@Data
public class DeviceCommandVO {

    private Long id;

    /**
     * 执行状态
     */
    private CommandStatus status;

    private String deviceId;    // 设备ID
    private String commandType; // 命令类型
    private Object commandData; // 命令数据

    private LocalDateTime createdTime; // 创建时间
    private LocalDateTime SentTime; // 更新时间


    public enum CommandStatus {

        // 待执行
        PENDING("PENDING"),
        // 已发送
        SENT("SENT"),
        // 已执行
        EXECUTED("EXECUTED"),
        // 执行失败
        FAILED("FAILED");

        private final String value;

        CommandStatus(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }
    }
}
